home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / misc / dspice0s / ptrmem.c < prev    next >
C/C++ Source or Header  |  1992-11-21  |  2KB  |  68 lines

  1. /* ptrmem.f -- translated by f2c (version of 3 February 1990  3:36:42).
  2.    You must link the resulting object file with the libraries:
  3.     -lF77 -lI77 -lm -lc   (in that order)
  4. */
  5.  
  6. #include "f2c.h"
  7.  
  8. /* Common Block Declarations */
  9.  
  10. struct {
  11.     doublereal cpyknt;
  12.     integer istack[1], lorg, icore, maxcor, maxuse, memavl, ldval, numblk, 
  13.         loctab, ltab, ifwa, nwoff, ntab, maxmem, memerr, nwd4, nwd8, 
  14.         nwd16;
  15. } memmgr_;
  16.  
  17. #define memmgr_1 memmgr_
  18.  
  19. /* Table of constant values */
  20.  
  21. static integer c__4 = 4;
  22.  
  23. /*<       subroutine ptrmem(ipntr,ipntr2) >*/
  24. /* Subroutine */ int ptrmem_(ipntr, ipntr2)
  25. integer *ipntr, *ipntr2;
  26. {
  27.     extern integer locf_();
  28.     extern /* Subroutine */ int memadj_(), errmem_();
  29.     extern logical memptr_();
  30.  
  31.     /* Parameter adjustments */
  32.     --ipntr;
  33.     --ipntr2;
  34.  
  35.     /* Function Body */
  36. /*<       implicit double precision (a-h,o-z) >*/
  37. /*<       dimension ipntr(1),ipntr2(1) >*/
  38. /* spice version 2g.6  sccsid=memmgr 3/15/83 */
  39. /*<       common /memmgr/ cpyknt,istack(1),lorg,icore,maxcor,maxuse,memavl, >*/
  40. /*<      1   ldval,numblk,loctab,ltab,ifwa,nwoff,ntab,maxmem,memerr,nwd4, >*/
  41. /*<      2   nwd8,nwd16 >*/
  42. /*<       logical memptr >*/
  43.  
  44. /* ***  ptrmem - reset memory pointer */
  45.  
  46. /* ...  verify that pointer is valid */
  47. /*<       if (memptr(ipntr(1))) go to 10 >*/
  48.     if (memptr_(&ipntr[1])) {
  49.     goto L10;
  50.     }
  51. /*<       memerr=5 >*/
  52.     memmgr_1.memerr = 5;
  53. /*<       call errmem(4,memerr,ipntr(1)) >*/
  54.     errmem_(&c__4, &memmgr_1.memerr, &ipntr[1]);
  55. /* ...  reset block pointer to be *ipntr2* */
  56. /*<    10 ipntr2(1)=ipntr(1) >*/
  57. L10:
  58.     ipntr2[1] = ipntr[1];
  59. /*<       istack(ltab+4)=locf(ipntr2(1)) >*/
  60.     memmgr_1.istack[memmgr_1.ltab + 3] = locf_(&ipntr2[1]);
  61. /*<       call memadj >*/
  62.     memadj_();
  63. /*<       return >*/
  64.     return 0;
  65. /*<       end >*/
  66. } /* ptrmem_ */
  67.  
  68.